Включение расширенного режима с поддержкой микросекунд
Высокочастотная запись трендов через API
Производительность в экспериментальных условиях
В обычном режиме тренды в SCADA Пульт.Онлайн хранят записи с миллисекундной точностью. Размер записи - 16 байт.
Формат записи в файле трендов с миллисекундной точностью:
|----------------------------------16B-------------------------->|
|<-----32b------>|<--6b-->|<--10b-->|<--16b-->|<------64b------->|
|----------------|--------|---------|---------|------------------|
| timestamp | errcnt | ms | error | value |
|----------------|--------|---------|---------|------------------|
| uint32 | uint8 | uint16 | int16 | dbl_IEEE754 |
|----------------|--------|---------|---------|------------------|
timestamp
- timestamp в секундах
errcnt
- счетчик ошибок на интервале
ms
- миллисекунды
error
- код ошибки (если есть)
value
- значение переменной
Для записи трендов с микросекундной точностью необходимо включить в настройках сервиса trends параметр extended_format=1
(расширенный формат). Размер записи в расширенном формате - 20 байт.
Формат записи в файле трендов с микросекундной точностью:
|------------------------------------20B---------------------------------->|
|<-----32b------>|<-12b-->|<--20b-->|<--16b-->|<------64b------->|<--16b-->|
|----------------|--------|---------|---------|------------------|---------|
| timestamp | errcnt | us | error | value | RESERVD |
|----------------|--------|---------|---------|------------------|---------|
| uint32 | uint8 | uint16 | int16 | dbl_IEEE754 | ????? |
|----------------|--------|---------|---------|------------------|---------|
timestamp
- timestamp в секундах
errcnt
- счетчик ошибок на интервале
us
- микросекунды
error
- код ошибки (если есть)
value
- значение переменной
RESERVD
- не используется
Параметр
extended_format
необходимо установить до начала записи любых трендов, т.к файлы разных форматов несовместимы!
Подключитесь к сервису trends по WebSocket (порт по умолчанию 11301
)
Выполните JSON-RPC2.0 запрос вида:
{
"jsonrpc": "2.0",
"id": "1",
"method": "write",
"params": [
["<var_name>", <time>, <value>, <error>],
...
["<var_name>", <time>, <value>, <error>]
]
}
Параметры запроса
var_name
(string): глобальное имя переменнойtime
(double): время в формате timestamp
с миллисекундами с дробной частьюvalue
(double): значение переменнойerror
(int, опционально): код ошибки (если есть)Пример
{
"jsonrpc": "2.0",
"id": "1",
"method": "write",
"params": [
["P1_N1_var1", 1749261578999.101, 12.345, 0],
["P1_N1_var2", 1749261578999.102, 34.567, 0],
["P1_N1_var3", 1749261578999.103, 56.789, 0]
]
}
Конфигурация оборудования:
Формат записи:
extended_format=1
Результат:
Конфигурация оборудования:
Формат записи:
extended_format=0
Результат: